# -*- coding: utf-8 -*-

# Define your item pipelines here
#
# Don't forget to add your pipeline to the ITEM_PIPELINES setting
# See: https://docs.scrapy.org/en/latest/topics/item-pipeline.html

import json

class ItcastPipeline(object):     #管道文件可以定义多个，在setting.py中ITEM_PIPELINES域
    def __init__(self):           #类的初始化只会执行一次，也就是只会生成一个文件
        self.f = open('itcast.json','w',encoding='utf-8')

    def process_item(self, item, spider): #这个方法是必须写的，其它两个方法是可选的
        content = json.dumps(dict(item),ensure_ascii = False) + '\n,'
        self.f.write(content)
        return item   #循环完之后，返回给引擎

    def close_spider(self,spider):
        self.f.close()    #所有都处理完之后，就关闭引擎


class ItcastPipeline01(object):
    def __init__(self):           #类的初始化只会执行一次，也就是只会生成一个文件
        self.f = open('itcast.csv','w',encoding='utf-8')

    def process_item(self, item, spider): #这个方法是必须写的，其它两个方法是可选的
        content = str(item) + '\n,'
        self.f.write(content)
        return item   #循环完之后，返回给引擎

    def close_spider(self,spider):
        self.f.close()    #所有都处理完之后，就关闭引擎
